Contracts in Programming and in Enterprise Systems
نویسنده
چکیده
In the first part of this report, we present an extension of the programmingby-contract (PBC) paradigm to a concurrent and distributed environment. Classical PBC is characterized by absolute conformance of code to its specification, assigning blame in case of failures, and a hierarchical, cooperative decomposition model – none of which extend naturally to a distributed environment with multiple administrative peers. We therefore propose a more nuanced contract model based on quantifiable performance of implementations; assuming responsibility for success, and a fundamentally adversarial model of system integration, where each component provider is optimizing its behavior locally, with respect to potentially conflicting demands. This model gives rise to a game-theoretic formulation of contract-governed process interactions. We introduce an abstract model of communication, which assumes no common model of computation at the peers in the distributed system. An implementation consists of a set of processes and possible delegation, which defines a strategy for the set of games specified by the set of committed contracts. Verification of correctness is introduced via contract portfolio conformance, which generalizes the idea of Hoare triple validity (underlying classical PBC). Contract portfolio conformance corresponds to a mix between partialand total correctness, called timed total correctness, and we show that portfolio conformance supports compositional reasoning. In the second part of this report, we have conducted a survey on both theoretical and practical approaches to contract formalization. By contract formalization we mean representation of (business) contracts in computer systems, to encompass automatic validation, execution, and analysis of contracts. These activities are collectively referred to as contract lifecycle management (CLM), and the typical aspects of a CLM system include (1) contract creation, (2) contract negotiation, (3) contract approval, (4) contract execution, and (5) contract analysis. Our survey concludes with a summary of the pros and cons of the covered approaches, and a perspective towards future work.
منابع مشابه
Extracting Functional and Non-functional Contracts from Java Classes and Enterprise Java Beans
We explore possibility of manual and automated contract extraction from Java classes and Enterprise Java Beans. Contracts are extended component interfaces that are defined using Contract Definition Language. They describe functional and non-functional properties. We examine how to extract hidden contracts and express them formally,modeling software components as abstract machines, hoping to ac...
متن کاملProviding an Enterprise Architecture Framework Model for Laboratory Information Management Systems by Service Oriented Approach
Background and Aim: Laboratories are one of the most important scientific and research centers. Laboratory information management systems provide a platform for recording the information and collaborating between researchers. The main purpose of this study was suggesting an organizational architecture model of laboratory information management systems. Materials and Methods: This study was a ...
متن کاملModeling Services using Contracts Identifying Dependencies in Service–Oriented Architectures
Design by contract is a well-established paradigm in software engineering. Bertrand Meyer first introduced the rigorous distinction between the responsibilities of service provider and service consumer for fine grain software artifacts (classes). This paper considers service contracts in the context of service-oriented architecture for complex enterprise information infrastructures. Identifying...
متن کاملA comparative study of the Iranian and American legal systems' application of the principle of justice in drug and medical equipment contracts
This article has no abstract.
متن کاملAn Integrated Enterprise Resources Planning (ERP) Framework forFlexible Manufacturing SystemsUsing Business Intelligence (BI)Tools
Nowadays Business intelligence (BI) tools provide optimal decision making, analyzing, controlling and monitoring of operations in enterprise systems like enterprise resource planning (ERP) and mainly refer to strong decision making methods used in online analytical processing, reporting and data analysis, such as improve internal processes, analysis of resources, information needs analysis, red...
متن کاملEconomic Evaluation of Fiscal Regime of Buy-Back Contracts in Comparison with Production Sharing Contracts (Case Study: Azadegan Oil Field)
F iscal regime is one of the main differences between petroleum contracts. Fiscal regimes in oil contracts are divided to two main categories namely Concessionary and Contractual Systems. In contractual systems, the main difference between service and production sharing contracts is the way of compensation of contractor services which could be in cash or in kind. In production sharin...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2009